Computers have become highly integrated in the workforce, in the home, in mobile devices, and many other places. Computers can process massive amounts of information quickly and efficiently. Software applications designed to run on computer systems allow users to perform a wide variety of functions including business applications, schoolwork, entertainment and more. Software applications are often designed to perform specific tasks, such as word processor applications for drafting documents, or email programs for sending, receiving and organizing email.
Software applications are typically designed for use in a certain environment. For instance, some applications are designed to run on a local computer system, such as an end-user's computer system. Other applications are designed to be run on distributed computer systems. In such cases, a user's local machine accesses a user interface of the distributed application, while the application itself is run on an external set of computer systems. These applications are designed to run either locally on a local computer system or on a distributed computer system, but not both.